#pragma once

#include <string>
using namespace std;

typedef enum {invalidDesign_Entity, procedure, stmtLst, stmt, assign, call, while_, if_, variable} design_entity ;
typedef enum {noAttribute, procName, varName, value, stmtNum} attr_Name;
typedef enum {modifies, uses, calls, callsT, parent, parentT, follows, followsT, next_, nextT, affects, affectsT} relationType;
typedef enum {symbol, number, name}refType;

typedef unsigned int symbolIndex;
typedef unsigned int resultIndex;
typedef unsigned int relationIndex;
typedef unsigned int withClauseIndex;
typedef unsigned int patternIndex;

design_entity toDesign_Entity(string type);
attr_Name toAttrName(string name);
relationType toRelationType(string type);